1. Field of the Invention
The present invention relates to a communication system transmitting data among plural apparatuses. Particularly, the present invention relates to: a communication apparatus that can reduce a communication collision on a communication line to which the apparatuses are connected and that can improve communication efficiency a relay apparatus that can improve communication efficiency for relaying to another communication line; a communication system including the communication apparatus or relay apparatus; and a communication method with the communication apparatus or relay apparatus.
2. Description of Related Art
Recently, several fields utilize a system in which plural apparatuses are connected, a function is assigned to each apparatus, the plural apparatuses mutually exchange data, and the communicating plural apparatuses implement several operations. For example, a field of on-vehicle local area network (on-vehicle LAN) mounted on a car utilizes a system in which a specialized function is assigned to each electronic control unit (ECU), the plural ECUs are connected with a communication line to mutually exchange data, and the communicating plural ECUs implement several operations.
Much more specialized function have been assigned to the ECU, the ECU has been able to implement much more various functions, and then, a communication line has been connected to a larger number of ECUs and much more various types of ECUs. Such a system is further expected to implement a larger variety of operations, and thus, a transmitted data amount is expected to be larger because ECUs must share data and communicate to each other.
When the communication line transmits a larger amount of data, data collision (conflict) may occur which causes a data delay. A significant data delay may bring a fatal event to a driving function implemented by an ECU, such as a brake control.
FIG. 23A and FIG. 23B are explanation views showing an example case where the data collision occurs in data transmitted from ECUs on a communication line. FIG. 23A shows a configuration where an ECU (A), ECU (B), ECU (C), ECU (D) and ECU (E) are connected with a bus topology. In this configuration, it is possible to transmit data when each communication line is opened. FIG. 23B shows a time sequence illustrating a data transmission timing of each ECU. As shown in FIG. 23A and FIG. 23B, each ECU transmits data at a predetermined interval. The predetermined interval is almost fixed for each ECU, although the predetermined interval may be changed a little due to the performance of ECU. Predetermined intervals of respective ECUs may be set differently from each other, e.g., 10 milliseconds, 12 milliseconds, 15 milliseconds, in order to avoid the collision of transmitted data. However, there is a timing at which plural ECUs try to transmit data almost simultaneously as shown by the time point “t” in FIG. 23B, i.e., a cycle that is the least common multiple of predetermined transmission intervals for respective ECUs. This timing cyclically comes and causes the data collision.
It is known that a definition; such as the FlexRay, controls data transmission with a time triggered protocol (TTP). Such a definition divides a predetermined communication cycle of each ECU and allows the communication at an assigned period, in order to avoid the data collision. However, it is preferred to be free from the constraint based on the time triggered protocol definition, and to prepare a definition applicable to the controller area network (CAN) that is typically utilized for the on-vehicle LAN and performs an event triggered control.
A patent document 1 proposes a control technique that utilizes a method applicable to the CAN and prevents the data collision caused by communication interference between ECUs. In the technique disclosed by the patent document 1, each ECU includes a time measuring means, measures a timing of data transmitted from another ECU, decides own data transmission timing to start transmitting data after another ECU completes data transmission, in order to avoid the communication collision.
In addition, it is known to divide a communication line into several different communication lines, to connect each ECU to a different communication line, to utilize a relay apparatus (gateway apparatus) for connecting the different communication lines, and to make the relay apparatus relay data, in order to avoid the collision caused by the increased number of ECUs connected to communication lines (e.g., patent document 2). Because these configurations reduce the number of ECUs connected to communication lines, it may be possible to reduce a communication amount and to avoid the data collision and the like. In these configurations, it may be further possible to save required communication lines and to avoid the collision, when ECUs sharing data are classified into a same group.
A patent document 3 discloses a technique in which ECUs utilized in the on-vehicle LAN field are classified into plural groups, ECUs classified in each group are connected to one communication line, and one communication line is connected to another communication line by a relay apparatus (gateway apparatus), in order to preferably relay high priority data based on the priority provided to transmitted message, and to prevent the transmission of high priority data from being delayed significantly even when the amount of communication loads are increased on communication lines.
The “priority” corresponds to a message ID provided to a message in the CAN typically utilized for the on-vehicle LAN, and the CAN is defined to preferably transmit a message provided with a smaller number in the case that the message ID is interpreted as such a number (non-patent document 1).
When a relay apparatus tries to relay a message received from an. ECU connected to one communication line toward another communication line or relay a message created from the received message toward another communication line, the relay apparatus may not enable relaying because of lower priority in the case that another communication line is utilized for transmitting high priority message greater than the message transmitted through said one communication line. At that time, there may be another message to be relayed from said another communication line which is held without being transmitted.
Even if these messages should be simultaneously received by an apparatus requiring these messages in this case, one of these messages is held without being relayed by the relay apparatus. Therefore, it is not possible to keep the simultaneous message reception. Hence, it is considered to utilize a method adjusting the transmission timing for each message, in order to prevent the message from being held due to the relay apparatus. The method utilizes the invention disclosed by the patent document 1. In the method, each ECU includes the time measuring means, measures the timing of data transmitted from another ECU, decides own data transmission timing to start transmitting data after another ECU completes data transmission, in order to avoid the communication collision.    [Patent Document 1] Japanese Patent Application Laid-Open No. 2007-60400    [Patent Document 2] Japanese Patent Application Laid-Open No. 2002-16614    [Patent Document 3] Japanese Patent Application Laid-Open No. 2005-159568    [Non-Patent Document 1] CAN Nyuumonsho (URL:http://documentation.renesas.com/jpn/products/mpumcu/apn/rjj05b0937_canap.pdf), Jan. 31, 2006, Renesas Electronics Corporation, online searched on Aug. 25, 2008.